#include<bits/stdc++.h>
#define _ ios::sync_with_stdio(0),cout.tie(0),cin.tie(0);
using namespace std;
int n, k, i, l, r, p, clr[256];
int main()
{_
memset(clr, -1, sizeof clr);
for (cin >> n >> k; i < n; i++){
cin >> p;
if (~clr[p]) cout << clr[p] << " ";
else {
l = r = p;
while (r - l + 1 < k && l && clr[l - 1] == -1) l--;
if (l && ~clr[l - 1] && p - clr[l - 1] + 1 <= k) l = clr[l - 1];
/// while (r - l + 1 < k && l < 255 && clr[r + 1] == -1) r++;
while (l <= r) clr[r] = l, r--;
cout << l << " ";
}
}
return 0;
}
566. Reshape the Matrix | 167. Two Sum II - Input array is sorted |
387. First Unique Character in a String | 383. Ransom Note |
242. Valid Anagram | 141. Linked List Cycle |
21. Merge Two Sorted Lists | 203. Remove Linked List Elements |
733. Flood Fill | 206. Reverse Linked List |
83. Remove Duplicates from Sorted List | 116. Populating Next Right Pointers in Each Node |
145. Binary Tree Postorder Traversal | 94. Binary Tree Inorder Traversal |
101. Symmetric Tree | 77. Combinations |
46. Permutations | 226. Invert Binary Tree |
112. Path Sum | 1556A - A Variety of Operations |
136. Single Number | 169. Majority Element |
119. Pascal's Triangle II | 409. Longest Palindrome |
1574A - Regular Bracket Sequences | 1574B - Combinatorics Homework |
1567A - Domino Disaster | 1593A - Elections |
1607A - Linear Keyboard | EQUALCOIN Equal Coins |